0 Votes

Changes for page Members

Last modified by Kay Joo on 2026/04/28 06:03

From version 55.1
edited by Kay Joo
on 2026/04/25 15:44
Change comment: There is no comment for this version
To version 49.1
edited by 지안 이
on 2026/04/22 06:51
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,0 @@
1 -Members
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.stone
1 +XWiki.easyone
Content
... ... @@ -1,329 +1,708 @@
1 +~{~{velocity}}
2 +
3 +~= 멤버 소개 =
4 +
5 +
6 +~{~{html clean="false"}}
7 +
8 +<style>
9 +
10 +.member-card {
11 +
12 + border: 1px solid #ddd;
13 +
14 + border-radius: 8px;
15 +
16 + padding: 15px;
17 +
18 + margin-bottom: 20px;
19 +
20 + background-color: #f9f9f9;
21 +
22 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
23 +
24 +}
25 +
26 +.member-name {
27 +
28 + color: #2c3e50;
29 +
30 + border-bottom: 2px solid #3498db;
31 +
32 + padding-bottom: 5px;
33 +
34 + margin-top: 0;
35 +
36 +}
37 +
38 +.member-info {
39 +
40 + list-style: none;
41 +
42 + padding-left: 0;
43 +
44 +}
45 +
46 +.member-info li {
47 +
48 + margin-bottom: 5px;
49 +
50 +}
51 +
52 +.member-label {
53 +
54 + font-weight: bold;
55 +
56 + color: #34495e;
57 +
58 + display: inline-block;
59 +
60 + width: 80px;
61 +
62 +}
63 +
64 +</style>
65 +
66 +~{~{/html}}
67 +
68 +
69 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
70 +
71 +#foreach($docName in $results)
72 +
73 + #set($memberDoc = $xwiki.getDocument($docName))
74 +
75 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
76 +
77 + #if($memberObj && $memberObj.getProperty('name').value != 'Name' && $memberObj.getProperty('name').value != '')
78 +
79 +
80 +~{~{html clean="false"}}
81 +
82 +<div class="member-card">
83 +
84 + <h3 class="member-name">$memberDoc.title 오빠</h3>
85 +
86 + <ul class="member-info">
87 +
88 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
89 +
90 + #set($birthday = $memberObj.getProperty('birthday').value)
91 +
92 + #if($birthday)
93 +
94 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
95 +
96 + #end
97 +
98 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
99 +
100 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
101 +
102 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
103 +
104 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
105 +
106 + </ul>
107 +
108 +</div>
109 +
110 +~{~{/html}}
111 +
112 +
113 + #end
114 +
115 +#end
116 +
117 +~{~{/velocity}}
118 +{{velocity}}= 멤버 소개 =
119 +
120 +{{html clean="false"}}
121 +<style>
122 +.member-card {
123 + border: 1px solid #ddd;
124 + border-radius: 8px;
125 + padding: 15px;
126 + margin-bottom: 20px;
127 + background-color: #f9f9f9;
128 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
129 +}
130 +.member-name {
131 + color: #2c3e50;
132 + border-bottom: 2px solid #3498db;
133 + padding-bottom: 5px;
134 + margin-top: 0;
135 +}
136 +.member-info {
137 + list-style: none;
138 + padding-left: 0;
139 +}
140 +.member-info li {
141 + margin-bottom: 5px;
142 +}
143 +.member-label {
144 + font-weight: bold;
145 + color: #34495e;
146 + display: inline-block;
147 + width: 80px;
148 +}
149 +</style>
150 +{{/html}}
151 +
152 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
153 +#foreach($docName in $results)
154 + #set($memberDoc = $xwiki.getDocument($docName))
155 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
156 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
157 +
158 +{{html clean="false"}}
159 +<div class="member-card">
160 + <h3 class="member-name">$memberDoc.title 오빠</h3>
161 + <ul class="member-info">
162 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
163 + #set($birthday = $memberObj.getProperty('birthday').value)
164 + #if($birthday)
165 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
166 + #end
167 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
168 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
169 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
170 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
171 + </ul>
172 +</div>
173 +{{/html}}
174 +
175 + #end
176 +#end{{/velocity}}
177 +
1 1  = 멤버 소개 =
2 2  
3 -{{html clean="false" wiki="true"}}
180 +{{html clean="false"}}
4 4  <style>
5 -.members-wrap{
6 - margin:1.5rem 0 2.5rem;
7 - color:#2a241f;
8 - font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
182 +.member-card {
183 +border: 1px solid #ddd;
184 +border-radius: 8px;
185 +padding: 15px;
186 +margin-bottom: 20px;
187 +background-color: #f9f9f9;
188 +box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
9 9  }
10 -.members-hero{
11 - padding:2.2rem 2rem;
12 - border:1px solid #e3ddd5;
13 - border-radius:24px;
14 - background:
15 - radial-gradient(circle at top right, rgba(1,105,111,.10), transparent 28%),
16 - linear-gradient(135deg,#f8f5ef 0%,#fcfbf8 100%);
17 - box-shadow:0 14px 40px rgba(39,31,23,.08);
190 +.member-name {
191 +color: #2c3e50;
192 +border-bottom: 2px solid #3498db;
193 +padding-bottom: 5px;
194 +margin-top: 0;
18 18  }
19 -.members-eyebrow{
20 - display:inline-block;
21 - margin-bottom:.7rem;
22 - padding:.35rem .7rem;
23 - border-radius:999px;
24 - background:#e4f1ef;
25 - color:#0d5c61;
26 - font-size:.86rem;
27 - font-weight:700;
28 - letter-spacing:.02em;
196 +.member-info {
197 +list-style: none;
198 +padding-left: 0;
29 29  }
30 -.members-hero h2{
31 - margin:0 0 .7rem;
32 - font-size:2rem;
33 - line-height:1.15;
34 - color:#1f2f36;
200 +.member-info li {
201 +margin-bottom: 5px;
35 35  }
36 -.members-hero p{
37 - margin:0;
38 - max-width:760px;
39 - color:#5f6b72;
40 - line-height:1.75;
41 - font-size:1rem;
203 +.member-label {
204 +font-weight: bold;
205 +color: #34495e;
206 +display: inline-block;
207 +width: 80px;
42 42  }
43 -.members-grid{
44 - display:grid;
45 - grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
46 - gap:1.2rem;
47 - margin-top:1.6rem;
209 +</style>
210 +{{/html}}
211 +
212 +
213 +{{html clean="false"}}
214 +<div class="member-card">
215 +<h3 class="member-name">이지안 오빠</h3>
216 +<ul class="member-info">
217 +<li><span class="member-label">이름:</span> 이지안</li>
218 +<li><span class="member-label">출생:</span> 1998년 04월 11일</li>
219 +<li><span class="member-label">거주지:</span> 장수클럽 클럽하우스</li>
220 +<li><span class="member-label">직업:</span> 장수클럽 전속 매니저</li>
221 +<li><span class="member-label">직장:</span> 장수클럽 (Jangsu Club)</li>
222 +<li><span class="member-label">주요 분야:</span> 데이터 아카이빙 및 오빠들 관리 ⚽️🐾</li>
223 +</ul>
224 +</div>
225 +{{/html}}
226 +
227 +
228 +{{html clean="false"}}
229 +<div class="member-card">
230 +<h3 class="member-name">주광석 오빠</h3>
231 +<ul class="member-info">
232 +<li><span class="member-label">이름:</span> 주광석</li>
233 +<li><span class="member-label">출생:</span> 1979년 04월 24일</li>
234 +<li><span class="member-label">거주지:</span> 시드니</li>
235 +<li><span class="member-label">직업:</span> 회사원 & 학생(학술연수 파견)</li>
236 +<li><span class="member-label">직장:</span> 한국주택금융공사 & The University of Sydney</li>
237 +<li><span class="member-label">주요 분야:</span> Data Science & Cybersecurity</li>
238 +</ul>
239 +</div>
240 +{{/html}}
241 +
242 +
243 +{{html clean="false"}}
244 +<div class="member-card">
245 +<h3 class="member-name">한종석 오빠</h3>
246 +<ul class="member-info">
247 +<li><span class="member-label">이름:</span> 한종석</li>
248 +<li><span class="member-label">출생:</span> 1979년 10월 29일</li>
249 +<li><span class="member-label">거주지:</span> 천국</li>
250 +<li><span class="member-label">직업:</span> 공무원</li>
251 +<li><span class="member-label">직장:</span> 대한민국 국회</li>
252 +<li><span class="member-label">주요 분야:</span> 사무처</li>
253 +</ul>
254 +</div>
255 +{{/html}}
256 +
257 +{{velocity}}
258 += 멤버 소개 =
259 +
260 +{{html clean="false"}}
261 +<style>
262 +.member-card {
263 + border: 1px solid #ddd;
264 + border-radius: 8px;
265 + padding: 15px;
266 + margin-bottom: 20px;
267 + background-color: #f9f9f9;
268 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
48 48  }
49 -.member-card{
50 - background:#fffdfa;
51 - border:1px solid #ebe4da;
52 - border-radius:22px;
53 - padding:1.2rem;
54 - box-shadow:0 8px 24px rgba(43,33,22,.05);
55 - transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
270 +.member-name {
271 + color: #2c3e50;
272 + border-bottom: 2px solid #3498db;
273 + padding-bottom: 5px;
274 + margin-top: 0;
56 56  }
57 -.member-card:hover{
58 - transform:translateY(-4px);
59 - box-shadow:0 16px 34px rgba(43,33,22,.09);
60 - border-color:#ddd2c3;
276 +.member-info {
277 + list-style: none;
278 + padding-left: 0;
61 61  }
62 -.member-top{
63 - display:flex;
64 - align-items:center;
65 - gap:.85rem;
66 - margin-bottom:.9rem;
280 +.member-info li {
281 + margin-bottom: 5px;
67 67  }
68 -.member-avatar{
69 - width:52px;
70 - height:52px;
71 - border-radius:50%;
72 - display:flex;
73 - align-items:center;
74 - justify-content:center;
75 - background:linear-gradient(135deg,#0f766e 0%,#0b5d56 100%);
76 - color:#fff;
77 - font-size:1.1rem;
78 - font-weight:700;
79 - box-shadow:0 8px 18px rgba(15,118,110,.22);
80 - flex:0 0 52px;
283 +.member-label {
284 + font-weight: bold;
285 + color: #34495e;
286 + display: inline-block;
287 + width: 80px;
81 81  }
82 -.member-name{
83 - margin:0;
84 - font-size:1.2rem;
85 - line-height:1.2;
86 - color:#222b33;
289 +</style>
290 +{{/html}}
291 +
292 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
293 +#foreach($docName in $results)
294 + #set($memberDoc = $xwiki.getDocument($docName))
295 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
296 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
297 +
298 +{{html clean="false"}}
299 +<div class="member-card">
300 + <h3 class="member-name">$memberDoc.title 오빠</h3>
301 + <ul class="member-info">
302 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
303 + #set($birthday = $memberObj.getProperty('birthday').value)
304 + #if($birthday)
305 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
306 + #end
307 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
308 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
309 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
310 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
311 + </ul>
312 +</div>
313 +{{/html}}
314 +
315 + #end
316 +#end
317 +{{/velocity}}
318 +
319 +{{velocity}}
320 += 멤버 소개 =
321 +
322 +{{html clean="false"}}
323 +<style>
324 +.member-card {
325 + border: 1px solid #ddd;
326 + border-radius: 8px;
327 + padding: 15px;
328 + margin-bottom: 20px;
329 + background-color: #f9f9f9;
330 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
87 87  }
88 -.member-sub{
89 - margin:.22rem 0 0;
90 - color:#8a7b69;
91 - font-size:.9rem;
332 +.member-name {
333 + color: #2c3e50;
334 + border-bottom: 2px solid #3498db;
335 + padding-bottom: 5px;
336 + margin-top: 0;
92 92  }
93 -.member-list{
94 - list-style:none;
95 - margin:0;
96 - padding:0;
338 +.member-info {
339 + list-style: none;
340 + padding-left: 0;
97 97  }
98 -.member-list li{
99 - display:flex;
100 - gap:.5rem;
101 - padding:.46rem 0;
102 - border-top:1px dashed #eee4d8;
103 - line-height:1.55;
104 - color:#4d5963;
342 +.member-info li {
343 + margin-bottom: 5px;
105 105  }
106 -.member-list li:first-child{
107 - border-top:none;
108 - padding-top:0;
345 +.member-label {
346 + font-weight: bold;
347 + color: #34495e;
348 + display: inline-block;
349 + width: 80px;
109 109  }
110 -.member-label{
111 - min-width:4.8rem;
112 - font-weight:700;
113 - color:#7a5a2d;
114 - flex:0 0 4.8rem;
351 +</style>
352 +{{/html}}
353 +
354 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
355 +#foreach($docName in $results)
356 + #set($memberDoc = $xwiki.getDocument($docName))
357 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
358 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
359 +
360 +{{html clean="false"}}
361 +<div class="member-card">
362 + <h3 class="member-name">$memberDoc.title 오빠</h3>
363 + <ul class="member-info">
364 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
365 + #set($birthday = $memberObj.getProperty('birthday').value)
366 + #if($birthday)
367 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
368 + #end
369 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
370 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
371 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
372 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
373 + </ul>
374 +</div>
375 +{{/html}}
376 +
377 + #end
378 +#end
379 +{{/velocity}}
380 +
381 +{{velocity}}
382 += 멤버 소개 =
383 +
384 +{{html clean="false"}}
385 +<style>
386 +.member-card {
387 + border: 1px solid #ddd;
388 + border-radius: 8px;
389 + padding: 15px;
390 + margin-bottom: 20px;
391 + background-color: #f9f9f9;
392 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
115 115  }
116 -.members-footer{
117 - margin-top:1.4rem;
118 - padding:1rem 1.1rem;
119 - border-left:4px solid #0f766e;
120 - border-radius:14px;
121 - background:#f6f6f2;
122 - color:#5f6972;
123 - line-height:1.7;
124 - font-size:.95rem;
394 +.member-name {
395 + color: #2c3e50;
396 + border-bottom: 2px solid #3498db;
397 + padding-bottom: 5px;
398 + margin-top: 0;
125 125  }
126 -@media (max-width:640px){
127 - .members-hero{padding:1.5rem 1.2rem;}
128 - .members-hero h2{font-size:1.55rem;}
129 - .member-list li{display:block;}
130 - .member-label{
131 - display:block;
132 - min-width:auto;
133 - margin-bottom:.12rem;
134 - }
400 +.member-info {
401 + list-style: none;
402 + padding-left: 0;
135 135  }
404 +.member-info li {
405 + margin-bottom: 5px;
406 +}
407 +.member-label {
408 + font-weight: bold;
409 + color: #34495e;
410 + display: inline-block;
411 + width: 80px;
412 +}
136 136  </style>
414 +{{/html}}
137 137  
138 -<div class="members-wrap">
139 - <section class="members-hero">
140 - <span class="members-eyebrow">Jangsu Club</span>
141 - <h2>함께한 시간이 만든, 우리의 멤버 소개</h2>
142 - <p>장수클럽 멤버들을 소개합니다. 이 페이지는 외부 공개용 안내 페이지로, 개인정보 보호를 위해 일부 정보는 축약하거나 마스킹해 표시했습니다.</p>
143 - </section>
416 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
417 +#foreach($docName in $results)
418 + #set($memberDoc = $xwiki.getDocument($docName))
419 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
420 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
144 144  
145 - <div class="members-grid">
422 +{{html clean="false"}}
423 +<div class="member-card">
424 + <h3 class="member-name">$memberDoc.title 오빠</h3>
425 + <ul class="member-info">
426 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
427 + #set($birthday = $memberObj.getProperty('birthday').value)
428 + #if($birthday)
429 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
430 + #end
431 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
432 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
433 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
434 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
435 + </ul>
436 +</div>
437 +{{/html}}
146 146  
147 - <article class="member-card">
148 - <div class="member-top">
149 - <div class="member-avatar">김</div>
150 - <div>
151 - <h3 class="member-name">김대홍</h3>
152 - <p class="member-sub">장수클럽 멤버</p>
153 - </div>
154 - </div>
155 - <ul class="member-list">
156 - <li><span class="member-label">출생</span><span>1979년 01월</span></li>
157 - <li><span class="member-label">직업</span><span>회사원</span></li>
158 - <li><span class="member-label">직장</span><span>삼**자</span></li>
159 - <li><span class="member-label">주요 분야</span><span>반도체</span></li>
160 - </ul>
161 - </article>
439 + #end
440 +#end
441 +{{/velocity}}
162 162  
163 - <article class="member-card">
164 - <div class="member-top">
165 - <div class="member-avatar">김</div>
166 - <div>
167 - <h3 class="member-name">김인용</h3>
168 - <p class="member-sub">장수클럽 멤버</p>
169 - </div>
170 - </div>
171 - <ul class="member-list">
172 - <li><span class="member-label">출생</span><span>1979년 01월</span></li>
173 - <li><span class="member-label">직업</span><span>회사원</span></li>
174 - <li><span class="member-label">직장</span><span>한*****원</span></li>
175 - <li><span class="member-label">주요 분야</span><span>조달</span></li>
176 - </ul>
177 - </article>
443 +{{velocity}}
444 += 멤버 소개 =
178 178  
179 - <article class="member-card">
180 - <div class="member-top">
181 - <div class="member-avatar">김</div>
182 - <div>
183 - <h3 class="member-name">김재명</h3>
184 - <p class="member-sub">장수클럽 멤버</p>
185 - </div>
186 - </div>
187 - <ul class="member-list">
188 - <li><span class="member-label">출생</span><span>1980년</span></li>
189 - <li><span class="member-label">직업</span><span>교수</span></li>
190 - <li><span class="member-label">직장</span><span>국립**대학교</span></li>
191 - <li><span class="member-label">주요 분야</span><span>수학교육과</span></li>
192 - </ul>
193 - </article>
446 +{{html clean="false"}}
447 +<style>
448 +.member-card {
449 + border: 1px solid #ddd;
450 + border-radius: 8px;
451 + padding: 15px;
452 + margin-bottom: 20px;
453 + background-color: #f9f9f9;
454 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
455 +}
456 +.member-name {
457 + color: #2c3e50;
458 + border-bottom: 2px solid #3498db;
459 + padding-bottom: 5px;
460 + margin-top: 0;
461 +}
462 +.member-info {
463 + list-style: none;
464 + padding-left: 0;
465 +}
466 +.member-info li {
467 + margin-bottom: 5px;
468 +}
469 +.member-label {
470 + font-weight: bold;
471 + color: #34495e;
472 + display: inline-block;
473 + width: 80px;
474 +}
475 +</style>
476 +{{/html}}
194 194  
195 - <article class="member-card">
196 - <div class="member-top">
197 - <div class="member-avatar">박</div>
198 - <div>
199 - <h3 class="member-name">박종석</h3>
200 - <p class="member-sub">장수클럽 멤버</p>
201 - </div>
202 - </div>
203 - <ul class="member-list">
204 - <li><span class="member-label">출생</span><span>1980년</span></li>
205 - <li><span class="member-label">직업</span><span>회사원</span></li>
206 - <li><span class="member-label">직장</span><span>(전직) 이******션</span></li>
207 - <li><span class="member-label">주요 분야</span><span>전산개발</span></li>
208 - </ul>
209 - </article>
478 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
479 +#foreach($docName in $results)
480 + #set($memberDoc = $xwiki.getDocument($docName))
481 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
482 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
210 210  
211 - <article class="member-card">
212 - <div class="member-top">
213 - <div class="member-avatar">송</div>
214 - <div>
215 - <h3 class="member-name">송창용</h3>
216 - <p class="member-sub">장수클럽 멤버</p>
484 + {{html clean="false"}}
485 + <div class="member-card">
486 + <h3 class="member-name">$memberDoc.title 오빠</h3>
487 + <ul class="member-info">
488 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
489 + #set($birthday = $memberObj.getProperty('birthday').value)
490 + #if($birthday)
491 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
492 + #end
493 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
494 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
495 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
496 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
497 + </ul>
217 217   </div>
218 - </div>
219 - <ul class="member-list">
220 - <li><span class="member-label">출생</span><span>1980년</span></li>
221 - <li><span class="member-label">직업</span><span>회사원</span></li>
222 - <li><span class="member-label">직장</span><span>엘******션</span></li>
223 - <li><span class="member-label">주요 분야</span><span>배터리 관리 시스템</span></li>
224 - </ul>
225 - </article>
499 + {{/html}}
226 226  
227 - <article class="member-card">
228 - <div class="member-top">
229 - <div class="member-avatar">신</div>
230 - <div>
231 - <h3 class="member-name">신동현</h3>
232 - <p class="member-sub">장수클럽 멤버</p>
233 - </div>
234 - </div>
235 - <ul class="member-list">
236 - <li><span class="member-label">출생</span><span>1979년</span></li>
237 - <li><span class="member-label">직업</span><span>교수</span></li>
238 - <li><span class="member-label">직장</span><span>미시간중부대학교</span></li>
239 - <li><span class="member-label">주요 분야</span><span>기계공학과</span></li>
240 - </ul>
241 - </article>
501 + #end
502 +#end
503 +{{/velocity}}
242 242  
243 - <article class="member-card">
244 - <div class="member-top">
245 - <div class="member-avatar">이</div>
246 - <div>
247 - <h3 class="member-name">이지안</h3>
248 - <p class="member-sub">장수클럽 전속 매니저</p>
249 - </div>
250 - </div>
251 - <ul class="member-list">
252 - <li><span class="member-label">출생</span><span>1998년 04월</span></li>
253 - <li><span class="member-label">직업</span><span>장수클럽 전속 매니저</span></li>
254 - <li><span class="member-label">직장</span><span>장수클럽</span></li>
255 - <li><span class="member-label">주요 분야</span><span>데이터 아카이빙 및 오빠들 관리 ⚽️🐾</span></li>
256 - </ul>
257 - </article>
505 +{{velocity}}
506 += 멤버 소개 =
258 258  
259 - <article class="member-card">
260 - <div class="member-top">
261 - <div class="member-avatar">정</div>
262 - <div>
263 - <h3 class="member-name">정현주</h3>
264 - <p class="member-sub">장수클럽 멤버</p>
265 - </div>
266 - </div>
267 - <ul class="member-list">
268 - <li><span class="member-label">출생</span><span>1979년</span></li>
269 - <li><span class="member-label">직업</span><span>의사</span></li>
270 - <li><span class="member-label">직장</span><span>****병원</span></li>
271 - <li><span class="member-label">주요 분야</span><span>감염내과/응급실</span></li>
272 - </ul>
273 - </article>
508 +{{html clean="false"}}
509 +<style>
510 +.member-card {
511 + border: 1px solid #ddd;
512 + border-radius: 8px;
513 + padding: 15px;
514 + margin-bottom: 20px;
515 + background-color: #f9f9f9;
516 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
517 +}
518 +.member-name {
519 + color: #2c3e50;
520 + border-bottom: 2px solid #3498db;
521 + padding-bottom: 5px;
522 + margin-top: 0;
523 +}
524 +.member-info {
525 + list-style: none;
526 + padding-left: 0;
527 +}
528 +.member-info li {
529 + margin-bottom: 5px;
530 +}
531 +.member-label {
532 + font-weight: bold;
533 + color: #34495e;
534 + display: inline-block;
535 + width: 80px;
536 +}
537 +</style>
538 +{{/html}}
274 274  
275 - <article class="member-card">
276 - <div class="member-top">
277 - <div class="member-avatar">주</div>
278 - <div>
279 - <h3 class="member-name">주광석</h3>
280 - <p class="member-sub">장수클럽 멤버</p>
540 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
541 +#foreach($docName in $results)
542 + #set($memberDoc = $xwiki.getDocument($docName))
543 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
544 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
545 + {{html clean="false"}}
546 + <div class="member-card">
547 + <h3 class="member-name">$memberDoc.title 오빠</h3>
548 + <ul class="member-info">
549 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
550 + #set($birthday = $memberObj.getProperty('birthday').value)
551 + #if($birthday)
552 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
553 + #end
554 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
555 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
556 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
557 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
558 + </ul>
281 281   </div>
282 - </div>
283 - <ul class="member-list">
284 - <li><span class="member-label">출생</span><span>1979년 04월</span></li>
285 - <li><span class="member-label">직업</span><span>회사원 & 학생(연수파견)</span></li>
286 - <li><span class="member-label">직장</span><span>한국****공사 &amp; The University of Sydney</span></li>
287 - <li><span class="member-label">주요 분야</span><span>Data Science &amp; Cybersecurity</span></li>
288 - </ul>
289 - </article>
560 + {{/html}}
561 + #end
562 +#end
563 +{{/velocity}}
290 290  
291 - <article class="member-card">
292 - <div class="member-top">
293 - <div class="member-avatar">한</div>
294 - <div>
295 - <h3 class="member-name">한인석</h3>
296 - <p class="member-sub">장수클럽 멤버</p>
297 - </div>
298 - </div>
299 - <ul class="member-list">
300 - <li><span class="member-label">출생</span><span>1982년</span></li>
301 - <li><span class="member-label">직업</span><span>회사원</span></li>
302 - <li><span class="member-label">직장</span><span>미래**생명</span></li>
303 - <li><span class="member-label">주요 분야</span><span>보험계리/전산개발</span></li>
304 - </ul>
305 - </article>
306 306  
307 - <article class="member-card">
308 - <div class="member-top">
309 - <div class="member-avatar">한</div>
310 - <div>
311 - <h3 class="member-name">한종석</h3>
312 - <p class="member-sub">장수클럽 멤버</p>
313 - </div>
314 - </div>
315 - <ul class="member-list">
316 - <li><span class="member-label">출생</span><span>1979년 10월</span></li>
317 - <li><span class="member-label">직업</span><span>(전직) 공무원 (현직) 천국주민</span></li>
318 - <li><span class="member-label">직장</span><span>(전직) 대한민국국회</span></li>
319 - <li><span class="member-label">주요 분야</span><span>사무처</span></li>
320 - </ul>
321 - </article>
566 +{{html clean="false"}}<div class="member-card">
567 +<h3 class="member-name">주광석 오빠</h3>
568 +<ul class="member-info">
569 +<li><span class="member-label">이름:</span> 주광석</li>
570 +<li><span class="member-label">출생:</span> 1979년 04월 24일</li>
571 +<li><span class="member-label">거주지:</span> 시드니</li>
572 +<li><span class="member-label">직업:</span> 회사원 & 학생(학술연수 파견)</li>
573 +<li><span class="member-label">직장:</span> 한국주택금융공사 & The University of Sydney</li>
574 +<li><span class="member-label">주요 분야:</span> Data Science & Cybersecurity</li>
575 +</ul>
576 +</div>{{/html}}
322 322  
323 - </div>
578 +(% class="member-card" %)
579 +(((
580 +(% class="member-name" %)
581 +=== 주광석 오빠 ===
324 324  
325 - <div class="members-footer">
326 - 이 페이지는 공개용 멤버 소개 페이지입니다. 상세 프로필과 세부 개인정보는 공개 범위를 제한한 내부 영역에서 별도로 관리합니다.
327 - </div>
328 -</div>
583 +(% class="member-info" %)
584 +* (% class="member-label" %)이름:(%%) 주광석
585 +* (% class="member-label" %)출생:(%%) 1979년 04월 24일
586 +* (% class="member-label" %)거주지:(%%) 시드니
587 +* (% class="member-label" %)직업:(%%) 회사원 & 학생(학술연수 파견)
588 +* (% class="member-label" %)직장:(%%) 한국주택금융공사 & The University of Sydney
589 +* (% class="member-label" %)주요 분야:(%%) Data Science & Cybersecurity
590 +)))
591 +
592 +
593 +{{html clean="false"}}<div class="member-card">
594 +<h3 class="member-name">한종석 오빠</h3>
595 +<ul class="member-info">
596 +<li><span class="member-label">이름:</span> 한종석</li>
597 +<li><span class="member-label">출생:</span> 1979년 10월 29일</li>
598 +<li><span class="member-label">거주지:</span> 천국</li>
599 +<li><span class="member-label">직업:</span> 공무원</li>
600 +<li><span class="member-label">직장:</span> 대한민국 국회</li>
601 +<li><span class="member-label">주요 분야:</span> 사무처</li>
602 +</ul>
603 +</div>{{/html}}
604 +
605 +(% class="member-card" %)
606 +(((
607 +(% class="member-name" %)
608 +=== 한종석 오빠 ===
609 +
610 +(% class="member-info" %)
611 +* (% class="member-label" %)이름:(%%) 한종석
612 +* (% class="member-label" %)출생:(%%) 1979년 10월 29일
613 +* (% class="member-label" %)거주지:(%%) 천국
614 +* (% class="member-label" %)직업:(%%) 공무원
615 +* (% class="member-label" %)직장:(%%) 대한민국 국회
616 +* (% class="member-label" %)주요 분야:(%%) 사무처
617 +)))
618 +
619 +
620 +{{velocity}}
621 += 멤버 소개 =
622 +
623 +{{html}}
624 +<style>
625 +.member-card {
626 + border: 1px solid #ddd;
627 + border-radius: 8px;
628 + padding: 15px;
629 + margin-bottom: 20px;
630 + background-color: #f9f9f9;
631 + box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
632 +}
633 +.member-name {
634 + color: #2c3e50;
635 + border-bottom: 2px solid #3498db;
636 + padding-bottom: 5px;
637 + margin-top: 0;
638 +}
639 +.member-info {
640 + list-style: none;
641 + padding-left: 0;
642 +}
643 +.member-info li {
644 + margin-bottom: 5px;
645 +}
646 +.member-label {
647 + font-weight: bold;
648 + color: #34495e;
649 + display: inline-block;
650 + width: 80px;
651 +}
652 +</style>
329 329  {{/html}}
654 +
655 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
656 +#foreach($docName in $results)
657 + #set($memberDoc = $xwiki.getDocument($docName))
658 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
659 + #if($memberObj && $memberObj.getProperty('name').value != 'Name')
660 + {{html}}
661 + <div class="member-card">
662 + <h3 class="member-name">$memberDoc.title 오빠</h3>
663 + <ul class="member-info">
664 + <li><span class="member-label">이름:</span> $memberObj.getProperty('name').value</li>
665 + #set($birthday = $memberObj.getProperty('birthday').value)
666 + #if($birthday)
667 + <li><span class="member-label">출생:</span> $datetool.format('yyyy년 MM월 dd일', $birthday)</li>
668 + #end
669 + <li><span class="member-label">거주지:</span> $memberObj.getProperty('address').value</li>
670 + <li><span class="member-label">직업:</span> $memberObj.getProperty('job').value</li>
671 + <li><span class="member-label">직장:</span> $memberObj.getProperty('company').value</li>
672 + <li><span class="member-label">주요 분야:</span> $memberObj.getProperty('field').value</li>
673 + </ul>
674 + </div>
675 + {{/html}}
676 + #end
677 +#end
678 +{{/velocity}}
679 +
680 +{{velocity}}
681 += 멤버 소개 =
682 +
683 +#set($results = $xwiki.searchDocuments("where doc.fullName like 'Home.Members.MemberProfileData.%' and doc.fullName <> 'Home.Members.MemberProfileData.Webhome' order by doc.title asc", 0, 0))
684 +#foreach($docName in $results)
685 + #set($memberDoc = $xwiki.getDocument($docName))
686 + #set($memberObj = $memberDoc.getObject('Home.Members.MemberProfileData.Code.MemberProfileDataClass'))
687 + #if($memberObj and $memberObj.getProperty('name').value != 'Name')
688 + === $memberDoc.title ===
689 +
690 + * **이름:** $memberObj.getProperty('name').value
691 + * **출생:** $memberObj.getProperty('birthday').value
692 + * **거주지:** $memberObj.getProperty('address').value
693 + * **직업:** $memberObj.getProperty('job').value
694 + * **직장:** $memberObj.getProperty('company').value
695 + * **주요 분야:** $memberObj.getProperty('field').value
696 +
697 + **프로필 사진**
698 + #set($photo = $memberObj.getProperty('photo').value)
699 + #if($photo && $photo != '')
700 + [[image:attach:$photo||width="200"]]
701 + #else
702 + 사진 없음
703 + #end
704 + #end
705 +#end
706 +{{/velocity}}
707 +
708 +
XWiki.AverageRatingsClass[0]
Average Vote
... ... @@ -1,0 +1,1 @@
1 +3.0
Manager Identifier
... ... @@ -1,0 +1,1 @@
1 +ratings
Number of Votes
... ... @@ -1,0 +1,1 @@
1 +1
Voted Entity Reference
... ... @@ -1,0 +1,1 @@
1 +document:xwiki:Home.Members.WebHome
Scale of votes
... ... @@ -1,0 +1,1 @@
1 +5
Date of last update
... ... @@ -1,0 +1,1 @@
1 +2026-04-21 21:44:13.402
✨ 실시간 통합 피드 (1인 1글 제한)